home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Arsenal Files 8
/
The Arsenal Files Collection #8 (Arsenal Computer) (1996).ISO
/
pcboard
/
iemsi120.zip
/
7&8-BIT.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1996-10-12
|
3KB
|
190 lines
Function FUNCTION000
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 3.2O (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
String STRING002
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
Byte BYTE001
Word WORD002
Word WORD003
Declare Function FUNCTION001(String STRING001) String
Declare Function FUNCTION002(String STRING005) String
;------------------------------------------------------------------------------
Goto LABEL001
End
;------------------------------------------------------------------------------
Function FUNCTION001(String STRING001) String
Word WORD001
String STRING003
String STRING004
Function FUNCTION002
For WORD001 = 1 To Len(STRING001)
STRING003 = Mid(STRING001, WORD001, 1)
If (Asc(STRING003) > 126) Then
STRING004 = STRING004 + "\" + I2S(Asc(STRING003), 16)
Continue
Endif
STRING004 = STRING004 + STRING003
If (InStr("\{[]}", STRING003) <> 0) STRING004 = STRING004 + STRING003
Next
FUNCTION001 = STRING004
EndFunc
;------------------------------------------------------------------------------
Function FUNCTION002(String STRING005) String
Word WORD002
Word WORD003
String STRING007
String STRING008
String STRING009
String STRING010
For WORD002 = 1 To Len(STRING005)
STRING009 = Right(STRING005, Len(STRING005) - WORD002 + 1)
WORD003 = InStr(STRING009 + "\", "\")
STRING008 = STRING008 + Left(STRING009, WORD003 - 1)
WORD002 = WORD002 + WORD003 - 1
If (Mid(STRING005, WORD002 + 1, 1) == "\") Then
STRING007 = "\"
Inc WORD002
Else
STRING007 = Chr(S2I(Mid(STRING005, WORD002 + 1, 2), 16))
WORD002 = WORD002 + 2
Endif
STRING008 = STRING008 + STRING007
Next
STRING008 = ReplaceStr(STRING008, "{{", "{")
STRING008 = ReplaceStr(STRING008, "}}", "}")
STRING008 = ReplaceStr(STRING008, "[[", "[")
STRING008 = ReplaceStr(STRING008, "]]", "]")
FUNCTION002 = STRING008
EndFunc
:LABEL001
For BYTE001 = 127 To 254
STRING012 = STRING012 + Chr(BYTE001)
Next
STRING012 = Mask_Ascii() + STRING012
STRING010 = "▓▒░ Sample 8-Bit string ░▒▓"
While (STRING011 <> "Q") Do
Cls
PrintLn "EMSI/IEMSI 7-Bit and 8-Bit translation"
PrintLn "--------------------------------------"
Newline
PrintLn "String = """, STRING010, """"
Newline
PrintLn "1. Enter new string"
PrintLn "2. Convert to 7-Bit"
PrintLn "3. Convert to 8-Bit"
Newline
InputStr "(Q=Quit) Selection", STRING011, 7, 1, Mask_Ascii(), 32 + 8
If (STRING011 == 1) Then
InputStr "String", STRING010, 7, 200, STRING012, 4096
Continue
Endif
If (STRING011 == 2) Then
Print "Working ..."
STRING010 = FUNCTION001(STRING010)
Continue
Endif
If (STRING011 == 3) Then
Print "Working ..."
STRING010 = FUNCTION002(STRING010)
Endif
EndWhile
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 2 End
; 1 Cls
; 18 Goto
; 29 Let
; 2 Print
; 6 PrintLn
; 10 If
; 2 InputStr
; 1 Inc
; 3 Newline
; 2 EndFunc
;
;
; ■ Functions used :
;
; 18 +
; 3 -
; 4 ==
; 2 <>
; 3 <
; 3 <=
; 1 >
; 6 >=
; 9 !
; 6 &&
; 3 ||
; 5 Len(
; 3 Mid()
; 1 Left()
; 1 Right()
; 2 Chr()
; 2 Asc()
; 2 InStr()
; 2 Mask_Ascii()
; 1 I2S()
; 1 S2I()
; 4 ReplaceStr()
;
;------------------------------------------------------------------------------
;
; Analysis flags : No flag
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 3 For/Next
; 1 While/EndWhile
; 5 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------